[INFO] fetching crate ethox 0.0.2...
[INFO] checking ethox-0.0.2 against master#158f00a1c5175648af6f6099b075f78d1d014a28 for pr-121251
[INFO] extracting crate ethox 0.0.2 into /workspace/builds/worker-7-tc1/source
[INFO] validating manifest of crates.io crate ethox 0.0.2 on toolchain 158f00a1c5175648af6f6099b075f78d1d014a28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate ethox 0.0.2
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate ethox 0.0.2
[INFO] tweaked toml for crates.io crate ethox 0.0.2 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] crate crates.io crate ethox 0.0.2 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded libc v0.2.66
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2050cabf10ff5472e5b2a65e30edd02452a8dc0973adee7284f26b1ba121414d
[INFO] running `Command { std: "docker" "start" "-a" "2050cabf10ff5472e5b2a65e30edd02452a8dc0973adee7284f26b1ba121414d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2050cabf10ff5472e5b2a65e30edd02452a8dc0973adee7284f26b1ba121414d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2050cabf10ff5472e5b2a65e30edd02452a8dc0973adee7284f26b1ba121414d", kill_on_drop: false }`
[INFO] [stdout] 2050cabf10ff5472e5b2a65e30edd02452a8dc0973adee7284f26b1ba121414d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 85dfc99ad20c67db312944a868041a68ff921c3bd0b007ad04b176d6f265f23d
[INFO] running `Command { std: "docker" "start" "-a" "85dfc99ad20c67db312944a868041a68ff921c3bd0b007ad04b176d6f265f23d", kill_on_drop: false }`
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]     Checking unicode-width v0.1.7
[INFO] [stderr]    Compiling unicode-segmentation v1.6.0
[INFO] [stderr]    Compiling byteorder v1.3.4
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking clap v2.33.0
[INFO] [stderr]    Compiling heck v0.3.1
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]     Checking ethox v0.0.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]     --> src/wire/./tcp.rs:1013:13
[INFO] [stdout]      |
[INFO] [stdout] 1013 |             (self.flags.syn() | self.flags.fin() | self.flags.rst())
[INFO] [stdout]      |             ^                                                      ^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1013 -             (self.flags.syn() | self.flags.fin() | self.flags.rst())
[INFO] [stdout] 1013 +             self.flags.syn() | self.flags.fin() | self.flags.rst()
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown `doc` attribute `shown`
[INFO] [stdout]   --> src/macros.rs:32:42
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   $($(#[$val_attr])* #[doc(shown)] $variant = $value ),+
[INFO] [stdout]    |                                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/wire/./ethernet.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout] 8  | / enum_with_unknown! {
[INFO] [stdout] 9  | |     /// Ethernet protocol type.
[INFO] [stdout] 10 | |     pub enum EtherType(u16) {
[INFO] [stdout] 11 | |         Ipv4 = 0x0800,
[INFO] [stdout] ...  |
[INFO] [stdout] 15 | |     }
[INFO] [stdout] 16 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #82730 <https://github.com/rust-lang/rust/issues/82730>
[INFO] [stdout]    = note: `#[warn(invalid_doc_attributes)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `enum_with_unknown` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown `doc` attribute `shown`
[INFO] [stdout]   --> src/macros.rs:32:42
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   $($(#[$val_attr])* #[doc(shown)] $variant = $value ),+
[INFO] [stdout]    |                                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/wire/./arp.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | / enum_with_unknown! {
[INFO] [stdout] 12 | |     /// ARP hardware type.
[INFO] [stdout] 13 | |     pub enum Hardware(u16) {
[INFO] [stdout] 14 | |         Ethernet = 1
[INFO] [stdout] 15 | |     }
[INFO] [stdout] 16 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #82730 <https://github.com/rust-lang/rust/issues/82730>
[INFO] [stdout]    = note: this warning originates in the macro `enum_with_unknown` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown `doc` attribute `shown`
[INFO] [stdout]   --> src/macros.rs:32:42
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   $($(#[$val_attr])* #[doc(shown)] $variant = $value ),+
[INFO] [stdout]    |                                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/wire/./arp.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | / enum_with_unknown! {
[INFO] [stdout] 19 | |     /// ARP operation type.
[INFO] [stdout] 20 | |     pub enum Operation(u16) {
[INFO] [stdout] 21 | |         Request = 1,
[INFO] [stdout] 22 | |         Reply = 2
[INFO] [stdout] 23 | |     }
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #82730 <https://github.com/rust-lang/rust/issues/82730>
[INFO] [stdout]    = note: this warning originates in the macro `enum_with_unknown` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown `doc` attribute `shown`
[INFO] [stdout]   --> src/macros.rs:32:42
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   $($(#[$val_attr])* #[doc(shown)] $variant = $value ),+
[INFO] [stdout]    |                                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/wire/./ip.rs:57:1
[INFO] [stdout]    |
[INFO] [stdout] 57 | / enum_with_unknown! {
[INFO] [stdout] 58 | |     /// IP datagram encapsulated protocol.
[INFO] [stdout] 59 | |     pub enum Protocol(u8) {
[INFO] [stdout] 60 | |         HopByHop  = 0x00,
[INFO] [stdout] ...  |
[INFO] [stdout] 70 | |     }
[INFO] [stdout] 71 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #82730 <https://github.com/rust-lang/rust/issues/82730>
[INFO] [stdout]    = note: this warning originates in the macro `enum_with_unknown` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown `doc` attribute `shown`
[INFO] [stdout]   --> src/macros.rs:32:42
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   $($(#[$val_attr])* #[doc(shown)] $variant = $value ),+
[INFO] [stdout]    |                                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/wire/./ipv6.rs:31:1
[INFO] [stdout]    |
[INFO] [stdout] 31 | / enum_with_unknown! {
[INFO] [stdout] 32 | |     /// IPv6 multicast scope.
[INFO] [stdout] 33 | |     pub enum Scope(u8) {
[INFO] [stdout] 34 | |         /// The address is valid for the interface alone.
[INFO] [stdout] ...  |
[INFO] [stdout] 48 | |     }
[INFO] [stdout] 49 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #82730 <https://github.com/rust-lang/rust/issues/82730>
[INFO] [stdout]    = note: this warning originates in the macro `enum_with_unknown` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `silent_until` is never read
[INFO] [stdout]    --> src/layer/arp/neighbor.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub struct Cache<'a> {
[INFO] [stdout]     |            ----- field in this struct
[INFO] [stdout] 108 |     storage:      Ordered<'a, Neighbor>,
[INFO] [stdout] 109 |     silent_until: Instant,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Cache` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/layer/ip/packet.rs:267:5
[INFO] [stdout]     |
[INFO] [stdout] 267 |     pub fn control(&self) -> &Controller<'a> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:59:9
[INFO] [stdout]     |
[INFO] [stdout] 59  | #![warn(missing_docs)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]    --> src/wire/payload.rs:276:9
[INFO] [stdout]     |
[INFO] [stdout] 276 |         core::mem::replace(self, inner);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 276 |         let _ = core::mem::replace(self, inner);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 9 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling structopt-derive v0.2.18
[INFO] [stderr]     Checking structopt v0.2.18
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]     --> src/wire/./tcp.rs:1013:13
[INFO] [stdout]      |
[INFO] [stdout] 1013 |             (self.flags.syn() | self.flags.fin() | self.flags.rst())
[INFO] [stdout]      |             ^                                                      ^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1013 -             (self.flags.syn() | self.flags.fin() | self.flags.rst())
[INFO] [stdout] 1013 +             self.flags.syn() | self.flags.fin() | self.flags.rst()
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown `doc` attribute `shown`
[INFO] [stdout]   --> src/macros.rs:32:42
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   $($(#[$val_attr])* #[doc(shown)] $variant = $value ),+
[INFO] [stdout]    |                                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/wire/./ethernet.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout] 8  | / enum_with_unknown! {
[INFO] [stdout] 9  | |     /// Ethernet protocol type.
[INFO] [stdout] 10 | |     pub enum EtherType(u16) {
[INFO] [stdout] 11 | |         Ipv4 = 0x0800,
[INFO] [stdout] ...  |
[INFO] [stdout] 15 | |     }
[INFO] [stdout] 16 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #82730 <https://github.com/rust-lang/rust/issues/82730>
[INFO] [stdout]    = note: `#[warn(invalid_doc_attributes)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `enum_with_unknown` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown `doc` attribute `shown`
[INFO] [stdout]   --> src/macros.rs:32:42
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   $($(#[$val_attr])* #[doc(shown)] $variant = $value ),+
[INFO] [stdout]    |                                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/wire/./arp.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | / enum_with_unknown! {
[INFO] [stdout] 12 | |     /// ARP hardware type.
[INFO] [stdout] 13 | |     pub enum Hardware(u16) {
[INFO] [stdout] 14 | |         Ethernet = 1
[INFO] [stdout] 15 | |     }
[INFO] [stdout] 16 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #82730 <https://github.com/rust-lang/rust/issues/82730>
[INFO] [stdout]    = note: this warning originates in the macro `enum_with_unknown` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown `doc` attribute `shown`
[INFO] [stdout]   --> src/macros.rs:32:42
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   $($(#[$val_attr])* #[doc(shown)] $variant = $value ),+
[INFO] [stdout]    |                                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/wire/./arp.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | / enum_with_unknown! {
[INFO] [stdout] 19 | |     /// ARP operation type.
[INFO] [stdout] 20 | |     pub enum Operation(u16) {
[INFO] [stdout] 21 | |         Request = 1,
[INFO] [stdout] 22 | |         Reply = 2
[INFO] [stdout] 23 | |     }
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #82730 <https://github.com/rust-lang/rust/issues/82730>
[INFO] [stdout]    = note: this warning originates in the macro `enum_with_unknown` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown `doc` attribute `shown`
[INFO] [stdout]   --> src/macros.rs:32:42
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   $($(#[$val_attr])* #[doc(shown)] $variant = $value ),+
[INFO] [stdout]    |                                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/wire/./ip.rs:57:1
[INFO] [stdout]    |
[INFO] [stdout] 57 | / enum_with_unknown! {
[INFO] [stdout] 58 | |     /// IP datagram encapsulated protocol.
[INFO] [stdout] 59 | |     pub enum Protocol(u8) {
[INFO] [stdout] 60 | |         HopByHop  = 0x00,
[INFO] [stdout] ...  |
[INFO] [stdout] 70 | |     }
[INFO] [stdout] 71 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #82730 <https://github.com/rust-lang/rust/issues/82730>
[INFO] [stdout]    = note: this warning originates in the macro `enum_with_unknown` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown `doc` attribute `shown`
[INFO] [stdout]   --> src/macros.rs:32:42
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   $($(#[$val_attr])* #[doc(shown)] $variant = $value ),+
[INFO] [stdout]    |                                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/wire/./ipv6.rs:31:1
[INFO] [stdout]    |
[INFO] [stdout] 31 | / enum_with_unknown! {
[INFO] [stdout] 32 | |     /// IPv6 multicast scope.
[INFO] [stdout] 33 | |     pub enum Scope(u8) {
[INFO] [stdout] 34 | |         /// The address is valid for the interface alone.
[INFO] [stdout] ...  |
[INFO] [stdout] 48 | |     }
[INFO] [stdout] 49 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #82730 <https://github.com/rust-lang/rust/issues/82730>
[INFO] [stdout]    = note: this warning originates in the macro `enum_with_unknown` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `silent_until` is never read
[INFO] [stdout]    --> src/layer/arp/neighbor.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub struct Cache<'a> {
[INFO] [stdout]     |            ----- field in this struct
[INFO] [stdout] 108 |     storage:      Ordered<'a, Neighbor>,
[INFO] [stdout] 109 |     silent_until: Instant,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Cache` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/wire/payload.rs:276:9
[INFO] [stdout]     |
[INFO] [stdout] 276 |         core::mem::replace(self, inner);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 276 |         let _ = core::mem::replace(self, inner);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 8 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.55s
[INFO] running `Command { std: "docker" "inspect" "85dfc99ad20c67db312944a868041a68ff921c3bd0b007ad04b176d6f265f23d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "85dfc99ad20c67db312944a868041a68ff921c3bd0b007ad04b176d6f265f23d", kill_on_drop: false }`
[INFO] [stdout] 85dfc99ad20c67db312944a868041a68ff921c3bd0b007ad04b176d6f265f23d
[INFO] checking ethox-0.0.2 against try#b4fc5dbf0bc33be331f9d893db5b3a794f29724a+rustflags=-Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds for pr-121251
[INFO] extracting crate ethox 0.0.2 into /workspace/builds/worker-7-tc2/source
[INFO] validating manifest of crates.io crate ethox 0.0.2 on toolchain b4fc5dbf0bc33be331f9d893db5b3a794f29724a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate ethox 0.0.2
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate ethox 0.0.2
[INFO] tweaked toml for crates.io crate ethox 0.0.2 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] crate crates.io crate ethox 0.0.2 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 97d52ae7b42e4bab0d60600a56a679f7a8ec10a16b5eb45546ff7b1aa17ebad1
[INFO] running `Command { std: "docker" "start" "-a" "97d52ae7b42e4bab0d60600a56a679f7a8ec10a16b5eb45546ff7b1aa17ebad1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "97d52ae7b42e4bab0d60600a56a679f7a8ec10a16b5eb45546ff7b1aa17ebad1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "97d52ae7b42e4bab0d60600a56a679f7a8ec10a16b5eb45546ff7b1aa17ebad1", kill_on_drop: false }`
[INFO] [stdout] 97d52ae7b42e4bab0d60600a56a679f7a8ec10a16b5eb45546ff7b1aa17ebad1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fbb9ce7f4497037198b02ebe854a99634b7336bbf509f205bfd560c6a737132d
[INFO] running `Command { std: "docker" "start" "-a" "fbb9ce7f4497037198b02ebe854a99634b7336bbf509f205bfd560c6a737132d", kill_on_drop: false }`
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]    Compiling unicode-segmentation v1.6.0
[INFO] [stderr]     Checking unicode-width v0.1.7
[INFO] [stderr]    Compiling byteorder v1.3.4
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking clap v2.33.0
[INFO] [stderr]    Compiling heck v0.3.1
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]     Checking ethox v0.0.2 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/nic/loopback.rs:107:18
[INFO] [stdout]     |
[INFO] [stdout] 107 |         for _ in 0..max {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/nic/loopback.rs:134:18
[INFO] [stdout]     |
[INFO] [stdout] 134 |         for _ in 0..max {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/layer/eth/packet.rs:141:27
[INFO] [stdout]     |
[INFO] [stdout] 141 |         let old_payload = raw_len - payload..raw_len;
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/layer/eth/packet.rs:142:27
[INFO] [stdout]     |
[INFO] [stdout] 142 |         let new_payload = new_len - payload..new_len;
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/layer/tcp/connection.rs:803:20
[INFO] [stdout]     |
[INFO] [stdout] 803 |             range: 0..0,
[INFO] [stdout]     |                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/layer/tcp/connection.rs:916:25
[INFO] [stdout]     |
[INFO] [stdout] 916 |             let range = sent..end;
[INFO] [stdout]     |                         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/layer/tcp/connection.rs:969:20
[INFO] [stdout]     |
[INFO] [stdout] 969 |             range: 0..0,
[INFO] [stdout]     |                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/layer/tcp/connection.rs:1010:21
[INFO] [stdout]      |
[INFO] [stdout] 1010 |         let range = 0..usize::try_from(to_send).unwrap();
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/layer/tcp/io.rs:153:29
[INFO] [stdout]     |
[INFO] [stdout] 153 |         &self.data.borrow()[self.consumed..self.sent]
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/layer/tcp/io.rs:158:29
[INFO] [stdout]     |
[INFO] [stdout] 158 |         &self.data.borrow()[self.sent..]
[INFO] [stdout]     |                             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/layer/tcp/io.rs:168:37
[INFO] [stdout]     |
[INFO] [stdout] 168 |         &mut self.data.borrow_mut()[self.sent..]
[INFO] [stdout]     |                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/layer/tcp/io.rs:218:28
[INFO] [stdout]     |
[INFO] [stdout] 218 |         buffer.copy_within(front_space.., front_space - amount);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/layer/tcp/io.rs:220:16
[INFO] [stdout]     |
[INFO] [stdout] 220 |         buffer[new_space..].copy_from_slice(&data[..amount]);
[INFO] [stdout]     |                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/layer/tcp/io.rs:373:40
[INFO] [stdout]     |
[INFO] [stdout] 373 |         let data = &self.data.borrow()[self.consumed..];
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/layer/tcp/io.rs:378:35
[INFO] [stdout]     |
[INFO] [stdout] 378 |         buf.copy_from_slice(&data[start..end])
[INFO] [stdout]     |                                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/layer/tcp/io.rs:391:52
[INFO] [stdout]     |
[INFO] [stdout] 391 |         let buffer = &mut self.buffer.borrow_mut()[self.mark..];
[INFO] [stdout]     |                                                    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/layer/tcp/io.rs:397:26
[INFO] [stdout]     |
[INFO] [stdout] 397 |             data = &data[pre..];
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/layer/tcp/io.rs:416:16
[INFO] [stdout]     |
[INFO] [stdout] 416 |         buffer[relative as usize..(relative+length) as usize]
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/layer/tcp/io.rs:430:30
[INFO] [stdout]     |
[INFO] [stdout] 430 |         self.buffer.borrow()[self.mark..].len()
[INFO] [stdout]     |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/layer/tcp/siphash.rs:81:42
[INFO] [stdout]    |
[INFO] [stdout] 81 |         let b = u64::from_le_bytes(bytes[8..].try_into().unwrap());
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/layer/tcp/siphash.rs:209:10
[INFO] [stdout]     |
[INFO] [stdout] 209 |         (0..Self::SIP_C).for_each(|_| self.round());
[INFO] [stdout]     |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/layer/tcp/siphash.rs:216:10
[INFO] [stdout]     |
[INFO] [stdout] 216 |         (0..Self::SIP_D).for_each(|_| self.round());
[INFO] [stdout]     |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/managed/ordered.rs:48:20
[INFO] [stdout]    |
[INFO] [stdout] 48 |         self.inner[idx..self.start]
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/managed/ordered.rs:61:20
[INFO] [stdout]    |
[INFO] [stdout] 61 |         self.inner[idx..self.start]
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/managed/partial.rs:155:22
[INFO] [stdout]     |
[INFO] [stdout] 155 |             .get_mut(pos..new_end)?
[INFO] [stdout]     |                      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/managed/partial.rs:177:22
[INFO] [stdout]     |
[INFO] [stdout] 177 |             .get_mut(pos..self.end)?
[INFO] [stdout]     |                      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/storage/assembler.rs:141:39
[INFO] [stdout]     |
[INFO] [stdout] 141 |         let range = &mut self.contigs[at..];
[INFO] [stdout]     |                                       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/storage/assembler.rs:150:22
[INFO] [stdout]     |
[INFO] [stdout] 150 |         self.contigs[at..].rotate_right(1);
[INFO] [stdout]     |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/storage/assembler.rs:308:41
[INFO] [stdout]     |
[INFO] [stdout] 308 |         for contig in &mut self.contigs[idx..] {
[INFO] [stdout]     |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/storage/ring_buffer.rs:182:50
[INFO] [stdout]     |
[INFO] [stdout] 182 |         let (size, result) = f(&mut self.storage[write_at..write_at + max_size]);
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/storage/ring_buffer.rs:209:26
[INFO] [stdout]     |
[INFO] [stdout] 209 |             (size, &data[size..])
[INFO] [stdout]     |                          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/storage/ring_buffer.rs:229:50
[INFO] [stdout]     |
[INFO] [stdout] 229 |         let (size, result) = f(&mut self.storage[self.read_at..self.read_at + max_size]);
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/storage/ring_buffer.rs:261:30
[INFO] [stdout]     |
[INFO] [stdout] 261 |             (size, &mut data[size..])
[INFO] [stdout]     |                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/storage/ring_buffer.rs:289:27
[INFO] [stdout]     |
[INFO] [stdout] 289 |         &mut self.storage[start_at..start_at + size]
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/storage/ring_buffer.rs:302:51
[INFO] [stdout]     |
[INFO] [stdout] 302 |             (slice_len, offset + slice_len, &data[slice_len..])
[INFO] [stdout]     |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/storage/ring_buffer.rs:336:23
[INFO] [stdout]     |
[INFO] [stdout] 336 |         &self.storage[start_at..start_at + size]
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/storage/ring_buffer.rs:348:59
[INFO] [stdout]     |
[INFO] [stdout] 348 |             (slice.len(), offset + slice.len(), &mut data[slice.len()..])
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ethernet.rs:147:44
[INFO] [stdout]     |
[INFO] [stdout] 147 |     pub(crate) const DESTINATION: Field =  0..6;
[INFO] [stdout]     |                                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ethernet.rs:148:44
[INFO] [stdout]     |
[INFO] [stdout] 148 |     pub(crate) const SOURCE:      Field =  6..12;
[INFO] [stdout]     |                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ethernet.rs:149:43
[INFO] [stdout]     |
[INFO] [stdout] 149 |     pub(crate) const ETHERTYPE:   Field = 12..14;
[INFO] [stdout]     |                                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/wire/./ethernet.rs:150:43
[INFO] [stdout]     |
[INFO] [stdout] 150 |     pub(crate) const PAYLOAD:     Rest  = 14..;
[INFO] [stdout]     |                                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./arp.rs:44:37
[INFO] [stdout]    |
[INFO] [stdout] 44 |     pub(crate) const HTYPE: Field = 0..2;
[INFO] [stdout]    |                                     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./arp.rs:45:37
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub(crate) const PTYPE: Field = 2..4;
[INFO] [stdout]    |                                     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./arp.rs:48:36
[INFO] [stdout]    |
[INFO] [stdout] 48 |     pub(crate) const OPER: Field = 6..8;
[INFO] [stdout]    |                                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./arp.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |         start..(start + hardware_len as usize)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./arp.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |         start..(start + protocol_len as usize)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./arp.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |         start..(start + hardware_len as usize)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./arp.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |         start..(start + protocol_len as usize)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ip.rs:190:22
[INFO] [stdout]     |
[INFO] [stdout] 190 |             for _ in 0..8 {
[INFO] [stdout]     |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/wire/./ip.rs:792:24
[INFO] [stdout]     |
[INFO] [stdout] 792 |                 d = &d[2..];
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/wire/./ip.rs:795:26
[INFO] [stdout]     |
[INFO] [stdout] 795 |             data = &data[CHUNK_SIZE..];
[INFO] [stdout]     |                          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/wire/./ip.rs:802:26
[INFO] [stdout]     |
[INFO] [stdout] 802 |             data = &data[2..];
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ip.rs:829:57
[INFO] [stdout]     |
[INFO] [stdout] 829 |                 NetworkEndian::write_u16(&mut proto_len[2..4], length as u16);
[INFO] [stdout]     |                                                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ip.rs:841:57
[INFO] [stdout]     |
[INFO] [stdout] 841 |                 NetworkEndian::write_u32(&mut proto_len[0..4], length);
[INFO] [stdout]     |                                                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./ipv4.rs:82:16
[INFO] [stdout]    |
[INFO] [stdout] 82 |         self.0[0..4] == [255; 4]
[INFO] [stdout]    |                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./ipv4.rs:97:16
[INFO] [stdout]    |
[INFO] [stdout] 97 |         self.0[0..2] == [169, 254]
[INFO] [stdout]    |                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv4.rs:469:40
[INFO] [stdout]     |
[INFO] [stdout] 469 |     pub(crate) const LENGTH:   Field = 2..4;
[INFO] [stdout]     |                                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv4.rs:470:40
[INFO] [stdout]     |
[INFO] [stdout] 470 |     pub(crate) const IDENT:    Field = 4..6;
[INFO] [stdout]     |                                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv4.rs:471:40
[INFO] [stdout]     |
[INFO] [stdout] 471 |     pub(crate) const FLG_OFF:  Field = 6..8;
[INFO] [stdout]     |                                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv4.rs:474:40
[INFO] [stdout]     |
[INFO] [stdout] 474 |     pub(crate) const CHECKSUM: Field = 10..12;
[INFO] [stdout]     |                                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv4.rs:475:40
[INFO] [stdout]     |
[INFO] [stdout] 475 |     pub(crate) const SRC_ADDR: Field = 12..16;
[INFO] [stdout]     |                                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv4.rs:476:40
[INFO] [stdout]     |
[INFO] [stdout] 476 |     pub(crate) const DST_ADDR: Field = 16..20;
[INFO] [stdout]     |                                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv4.rs:739:9
[INFO] [stdout]     |
[INFO] [stdout] 739 |         header_end..total_len
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./ipv6.rs:84:44
[INFO] [stdout]    |
[INFO] [stdout] 84 |         NetworkEndian::write_u16(&mut addr[0..2], a0);
[INFO] [stdout]    |                                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./ipv6.rs:85:44
[INFO] [stdout]    |
[INFO] [stdout] 85 |         NetworkEndian::write_u16(&mut addr[2..4], a1);
[INFO] [stdout]    |                                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./ipv6.rs:86:44
[INFO] [stdout]    |
[INFO] [stdout] 86 |         NetworkEndian::write_u16(&mut addr[4..6], a2);
[INFO] [stdout]    |                                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./ipv6.rs:87:44
[INFO] [stdout]    |
[INFO] [stdout] 87 |         NetworkEndian::write_u16(&mut addr[6..8], a3);
[INFO] [stdout]    |                                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./ipv6.rs:88:44
[INFO] [stdout]    |
[INFO] [stdout] 88 |         NetworkEndian::write_u16(&mut addr[8..10], a4);
[INFO] [stdout]    |                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./ipv6.rs:89:44
[INFO] [stdout]    |
[INFO] [stdout] 89 |         NetworkEndian::write_u16(&mut addr[10..12], a5);
[INFO] [stdout]    |                                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./ipv6.rs:90:44
[INFO] [stdout]    |
[INFO] [stdout] 90 |         NetworkEndian::write_u16(&mut addr[12..14], a6);
[INFO] [stdout]    |                                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./ipv6.rs:91:44
[INFO] [stdout]    |
[INFO] [stdout] 91 |         NetworkEndian::write_u16(&mut addr[14..16], a7);
[INFO] [stdout]    |                                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv6.rs:112:25
[INFO] [stdout]     |
[INFO] [stdout] 112 |         for word_idx in 0..8 {
[INFO] [stdout]     |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv6.rs:114:49
[INFO] [stdout]     |
[INFO] [stdout] 114 |             NetworkEndian::write_u16(&mut bytes[byte_idx..(byte_idx + 2)], data[word_idx]);
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv6.rs:163:16
[INFO] [stdout]     |
[INFO] [stdout] 163 |         addr.0[8..16].copy_from_slice(&id.0[..]);
[INFO] [stdout]     |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv6.rs:173:18
[INFO] [stdout]     |
[INFO] [stdout] 173 |         for i in 0..8 {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv6.rs:175:55
[INFO] [stdout]     |
[INFO] [stdout] 175 |             data[i] = NetworkEndian::read_u16(&self.0[byte_idx..(byte_idx + 2)]);
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv6.rs:209:16
[INFO] [stdout]     |
[INFO] [stdout] 209 |         self.0[0..8] == [0xfe, 0x80, 0x00, 0x00,
[INFO] [stdout]     |                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv6.rs:224:16
[INFO] [stdout]     |
[INFO] [stdout] 224 |         self.0[0..12] == [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xff, 0xff]
[INFO] [stdout]     |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/wire/./ipv6.rs:264:15
[INFO] [stdout]     |
[INFO] [stdout] 264 |         bytes[14..].copy_from_slice(&self.0[14..]);
[INFO] [stdout]     |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/wire/./ipv6.rs:264:45
[INFO] [stdout]     |
[INFO] [stdout] 264 |         bytes[14..].copy_from_slice(&self.0[14..]);
[INFO] [stdout]     |                                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv6.rs:560:43
[INFO] [stdout]     |
[INFO] [stdout] 560 |     pub(crate) const VER_TC_FLOW: Field = 0..4;
[INFO] [stdout]     |                                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv6.rs:563:43
[INFO] [stdout]     |
[INFO] [stdout] 563 |     pub(crate) const LENGTH:      Field = 4..6;
[INFO] [stdout]     |                                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv6.rs:571:43
[INFO] [stdout]     |
[INFO] [stdout] 571 |     pub(crate) const SRC_ADDR:    Field = 8..24;
[INFO] [stdout]     |                                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv6.rs:573:43
[INFO] [stdout]     |
[INFO] [stdout] 573 |     pub(crate) const DST_ADDR:    Field = 24..40;
[INFO] [stdout]     |                                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv6.rs:643:43
[INFO] [stdout]     |
[INFO] [stdout] 643 |         ((NetworkEndian::read_u16(&self.0[0..2]) & 0x0ff0) >> 4) as u8
[INFO] [stdout]     |                                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv6.rs:649:41
[INFO] [stdout]     |
[INFO] [stdout] 649 |         NetworkEndian::read_u24(&self.0[1..4]) & 0x000fffff
[INFO] [stdout]     |                                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv6.rs:713:46
[INFO] [stdout]     |
[INFO] [stdout] 713 |         NetworkEndian::write_u24(&mut self.0[1..4], raw);
[INFO] [stdout]     |                                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv6.rs:749:21
[INFO] [stdout]     |
[INFO] [stdout] 749 |         let range = self.header_len()..self.total_len();
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv6.rs:756:21
[INFO] [stdout]     |
[INFO] [stdout] 756 |         let range = self.header_len()..self.total_len();
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./ipv6option.rs:84:9
[INFO] [stdout]    |
[INFO] [stdout] 84 |         2..length as usize + 2
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/wire/./ipv6option.rs:327:54
[INFO] [stdout]     |
[INFO] [stdout] 327 |             match Ipv6Option::new_checked(&self.data[self.pos..]) {
[INFO] [stdout]     |                                                      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./ipv6hopbyhop.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |         2..bytes as usize
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./ipv6fragment.rs:30:48
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub(crate) const FR_OF_M:          Field = 2..4;
[INFO] [stdout]    |                                                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./ipv6fragment.rs:32:48
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub(crate) const IDENT:            Field = 4..8;
[INFO] [stdout]    |                                                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./ipv6routing.rs:94:9
[INFO] [stdout]    |
[INFO] [stdout] 94 |         4..bytes as usize
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv6routing.rs:114:44
[INFO] [stdout]     |
[INFO] [stdout] 114 |     pub(crate) const HOME_ADDRESS: Field = 8..24;
[INFO] [stdout]     |                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./ipv6routing.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 137 |         8..data.end
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./icmpv4.rs:191:42
[INFO] [stdout]     |
[INFO] [stdout] 191 |     pub(crate) const CHECKSUM:   Field = 2..4;
[INFO] [stdout]     |                                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./icmpv4.rs:193:42
[INFO] [stdout]     |
[INFO] [stdout] 193 |     pub(crate) const UNUSED:     Field = 4..8;
[INFO] [stdout]     |                                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./icmpv4.rs:195:42
[INFO] [stdout]     |
[INFO] [stdout] 195 |     pub(crate) const ECHO_IDENT: Field = 4..6;
[INFO] [stdout]     |                                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./icmpv4.rs:196:42
[INFO] [stdout]     |
[INFO] [stdout] 196 |     pub(crate) const ECHO_SEQNO: Field = 6..8;
[INFO] [stdout]     |                                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/wire/./icmpv4.rs:348:17
[INFO] [stdout]     |
[INFO] [stdout] 348 |         &self.0[field::HEADER_END..]
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/wire/./icmpv4.rs:353:21
[INFO] [stdout]     |
[INFO] [stdout] 353 |         &mut self.0[field::HEADER_END..]
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./udp.rs:25:40
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub(crate) const SRC_PORT: Field = 0..2;
[INFO] [stdout]    |                                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./udp.rs:26:40
[INFO] [stdout]    |
[INFO] [stdout] 26 |     pub(crate) const DST_PORT: Field = 2..4;
[INFO] [stdout]    |                                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./udp.rs:27:40
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub(crate) const LENGTH:   Field = 4..6;
[INFO] [stdout]    |                                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./udp.rs:28:40
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub(crate) const CHECKSUM: Field = 6..8;
[INFO] [stdout]    |                                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./udp.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |         CHECKSUM.end..(length as usize)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./tcp.rs:93:40
[INFO] [stdout]    |
[INFO] [stdout] 93 |     pub(crate) const SRC_PORT: Field = 0..2;
[INFO] [stdout]    |                                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./tcp.rs:94:40
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub(crate) const DST_PORT: Field = 2..4;
[INFO] [stdout]    |                                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./tcp.rs:95:40
[INFO] [stdout]    |
[INFO] [stdout] 95 |     pub(crate) const SEQ_NUM:  Field = 4..8;
[INFO] [stdout]    |                                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./tcp.rs:96:40
[INFO] [stdout]    |
[INFO] [stdout] 96 |     pub(crate) const ACK_NUM:  Field = 8..12;
[INFO] [stdout]    |                                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./tcp.rs:97:40
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub(crate) const FLAGS:    Field = 12..14;
[INFO] [stdout]    |                                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./tcp.rs:98:40
[INFO] [stdout]    |
[INFO] [stdout] 98 |     pub(crate) const WIN_SIZE: Field = 14..16;
[INFO] [stdout]    |                                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/wire/./tcp.rs:99:40
[INFO] [stdout]    |
[INFO] [stdout] 99 |     pub(crate) const CHECKSUM: Field = 16..18;
[INFO] [stdout]    |                                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./tcp.rs:100:40
[INFO] [stdout]     |
[INFO] [stdout] 100 |     pub(crate) const URGENT:   Field = 18..20;
[INFO] [stdout]     |                                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./tcp.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |         URGENT.end..(length as usize)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/wire/./tcp.rs:301:15
[INFO] [stdout]     |
[INFO] [stdout] 301 |         &data[header_len..]
[INFO] [stdout]     |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/wire/./tcp.rs:319:15
[INFO] [stdout]     |
[INFO] [stdout] 319 |         &data[header_len..]
[INFO] [stdout]     |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/wire/./tcp.rs:430:19
[INFO] [stdout]     |
[INFO] [stdout] 430 |         &mut data[header_len..]
[INFO] [stdout]     |                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./tcp.rs:650:39
[INFO] [stdout]     |
[INFO] [stdout] 650 |                 let data = buffer.get(2..length).ok_or(Error::Truncated)?;
[INFO] [stdout]     |                                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./tcp.rs:694:43
[INFO] [stdout]     |
[INFO] [stdout] 694 | ...                   &data[left..mid]);
[INFO] [stdout]     |                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/./tcp.rs:696:43
[INFO] [stdout]     |
[INFO] [stdout] 696 | ...                   &data[mid..right]);
[INFO] [stdout]     |                             ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/wire/./tcp.rs:709:21
[INFO] [stdout]     |
[INFO] [stdout] 709 |         Ok((&buffer[length..], option))
[INFO] [stdout]     |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/wire/./tcp.rs:751:62
[INFO] [stdout]     |
[INFO] [stdout] 751 |                         NetworkEndian::write_u16(&mut buffer[2..], value)
[INFO] [stdout]     |                                                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/wire/./tcp.rs:765:66
[INFO] [stdout]     |
[INFO] [stdout] 765 | ...                   NetworkEndian::write_u32(&mut buffer[pos..], first);
[INFO] [stdout]     |                                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/wire/./tcp.rs:766:66
[INFO] [stdout]     |
[INFO] [stdout] 766 | ...                   NetworkEndian::write_u32(&mut buffer[pos+4..], second);
[INFO] [stdout]     |                                                            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/wire/./tcp.rs:771:32
[INFO] [stdout]     |
[INFO] [stdout] 771 |                         buffer[2..].copy_from_slice(provided)
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/wire/./tcp.rs:776:21
[INFO] [stdout]     |
[INFO] [stdout] 776 |         &mut buffer[length..]
[INFO] [stdout]     |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]     --> src/wire/./tcp.rs:1013:13
[INFO] [stdout]      |
[INFO] [stdout] 1013 |             (self.flags.syn() | self.flags.fin() | self.flags.rst())
[INFO] [stdout]      |             ^                                                      ^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1013 -             (self.flags.syn() | self.flags.fin() | self.flags.rst())
[INFO] [stdout] 1013 +             self.flags.syn() | self.flags.fin() | self.flags.rst()
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/wire/payload_ext.rs:117:29
[INFO] [stdout]     |
[INFO] [stdout] 117 |         for i in &mut slice[offset..offset + length] {
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown `doc` attribute `shown`
[INFO] [stdout]   --> src/macros.rs:32:42
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   $($(#[$val_attr])* #[doc(shown)] $variant = $value ),+
[INFO] [stdout]    |                                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/wire/./ethernet.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout] 8  | / enum_with_unknown! {
[INFO] [stdout] 9  | |     /// Ethernet protocol type.
[INFO] [stdout] 10 | |     pub enum EtherType(u16) {
[INFO] [stdout] 11 | |         Ipv4 = 0x0800,
[INFO] [stdout] ...  |
[INFO] [stdout] 15 | |     }
[INFO] [stdout] 16 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #82730 <https://github.com/rust-lang/rust/issues/82730>
[INFO] [stdout]    = note: `#[warn(invalid_doc_attributes)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `enum_with_unknown` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown `doc` attribute `shown`
[INFO] [stdout]   --> src/macros.rs:32:42
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   $($(#[$val_attr])* #[doc(shown)] $variant = $value ),+
[INFO] [stdout]    |                                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/wire/./arp.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | / enum_with_unknown! {
[INFO] [stdout] 12 | |     /// ARP hardware type.
[INFO] [stdout] 13 | |     pub enum Hardware(u16) {
[INFO] [stdout] 14 | |         Ethernet = 1
[INFO] [stdout] 15 | |     }
[INFO] [stdout] 16 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #82730 <https://github.com/rust-lang/rust/issues/82730>
[INFO] [stdout]    = note: this warning originates in the macro `enum_with_unknown` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown `doc` attribute `shown`
[INFO] [stdout]   --> src/macros.rs:32:42
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   $($(#[$val_attr])* #[doc(shown)] $variant = $value ),+
[INFO] [stdout]    |                                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/wire/./arp.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | / enum_with_unknown! {
[INFO] [stdout] 19 | |     /// ARP operation type.
[INFO] [stdout] 20 | |     pub enum Operation(u16) {
[INFO] [stdout] 21 | |         Request = 1,
[INFO] [stdout] 22 | |         Reply = 2
[INFO] [stdout] 23 | |     }
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #82730 <https://github.com/rust-lang/rust/issues/82730>
[INFO] [stdout]    = note: this warning originates in the macro `enum_with_unknown` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown `doc` attribute `shown`
[INFO] [stdout]   --> src/macros.rs:32:42
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   $($(#[$val_attr])* #[doc(shown)] $variant = $value ),+
[INFO] [stdout]    |                                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/wire/./ip.rs:57:1
[INFO] [stdout]    |
[INFO] [stdout] 57 | / enum_with_unknown! {
[INFO] [stdout] 58 | |     /// IP datagram encapsulated protocol.
[INFO] [stdout] 59 | |     pub enum Protocol(u8) {
[INFO] [stdout] 60 | |         HopByHop  = 0x00,
[INFO] [stdout] ...  |
[INFO] [stdout] 70 | |     }
[INFO] [stdout] 71 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #82730 <https://github.com/rust-lang/rust/issues/82730>
[INFO] [stdout]    = note: this warning originates in the macro `enum_with_unknown` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown `doc` attribute `shown`
[INFO] [stdout]   --> src/macros.rs:32:42
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   $($(#[$val_attr])* #[doc(shown)] $variant = $value ),+
[INFO] [stdout]    |                                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/wire/./ipv6.rs:31:1
[INFO] [stdout]    |
[INFO] [stdout] 31 | / enum_with_unknown! {
[INFO] [stdout] 32 | |     /// IPv6 multicast scope.
[INFO] [stdout] 33 | |     pub enum Scope(u8) {
[INFO] [stdout] 34 | |         /// The address is valid for the interface alone.
[INFO] [stdout] ...  |
[INFO] [stdout] 48 | |     }
[INFO] [stdout] 49 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #82730 <https://github.com/rust-lang/rust/issues/82730>
[INFO] [stdout]    = note: this warning originates in the macro `enum_with_unknown` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `silent_until` is never read
[INFO] [stdout]    --> src/layer/arp/neighbor.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub struct Cache<'a> {
[INFO] [stdout]     |            ----- field in this struct
[INFO] [stdout] 108 |     storage:      Ordered<'a, Neighbor>,
[INFO] [stdout] 109 |     silent_until: Instant,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Cache` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/layer/ip/packet.rs:267:5
[INFO] [stdout]     |
[INFO] [stdout] 267 |     pub fn control(&self) -> &Controller<'a> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:59:9
[INFO] [stdout]     |
[INFO] [stdout] 59  | #![warn(missing_docs)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeBounds` trait bound in public function
[INFO] [stdout]   --> src/managed/phantom_alloc/phantom_vec.rs:33:18
[INFO] [stdout]    |
[INFO] [stdout] 33 |         where R: RangeBounds<usize>
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-bounds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public struct field
[INFO] [stdout]   --> src/wire/payload.rs:57:16
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub range: ops::Range<usize>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-D explicit-range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `core::mem::replace` that must be used
[INFO] [stdout]    --> src/wire/payload.rs:276:9
[INFO] [stdout]     |
[INFO] [stdout] 276 |         core::mem::replace(self, inner);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 276 |         let _ = core::mem::replace(self, inner);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public struct field
[INFO] [stdout]   --> src/wire/payload_ext.rs:15:22
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub old_payload: ops::Range<usize>,
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public struct field
[INFO] [stdout]   --> src/wire/payload_ext.rs:20:22
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub new_payload: ops::Range<usize>,
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors; 140 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ethox` (lib) due to 4 previous errors; 140 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "fbb9ce7f4497037198b02ebe854a99634b7336bbf509f205bfd560c6a737132d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fbb9ce7f4497037198b02ebe854a99634b7336bbf509f205bfd560c6a737132d", kill_on_drop: false }`
[INFO] [stdout] fbb9ce7f4497037198b02ebe854a99634b7336bbf509f205bfd560c6a737132d
